home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Die Speccy' 97
/
Die Speccy' 97.iso
/
amiga_system
/
the_aminet
/
util
/
misc
/
deinstaller.lha
/
DeInstaller
/
DeInstaller.doc
< prev
next >
Wrap
Text File
|
1995-10-23
|
13KB
|
383 lines
--------------------------------------------------
╗╗╗ DeInstaller v1.1a ½½½
"The only way to keep your harddisk clean!"
Beetware ⌐ 1994-1995 The Beet Research
written by Grzegorz Calkowski
-----------------------------------------------------------------
Disclaimer
----------
The program executable and information above is provided "as is". No
representations or warranties are made with respect to the accuracy,
reliability, performance, currentness, or operation of this software and
information, and all use is at your own risk. The author doesn't assume any
responsibility or liability whatsoever with respect to your use of the
program and information.
Copying
-------
DeInstaller is published under "BeetWare" conception. It's very special
sort of GiftWare. It means you should send a beet to the author (but not a
rotten one! 8). Well, if you run short on beets send a disk or a small
donation or anything else. (Have a hint: a bottle of beer would be
excellent... :)
This program can be freely distributed under following conditions:
1. Everything in this distribution must be kept together and
unaltered. Applies to:
DeInstaller (the program itself)
DeInstaller.info (its icon)
DeInstaller.doc (plain-ascii doc)
DeInstaller.doc.info
DeInstaller.guide (AmigaGuide«'ed doc)
DeInstaller.guide.info
MWB-Icons/DeInstaller.info (program icon in MagicWB style :)
MWB-Icons/DeInstaller_alt.info (an alternate MWB icon)
MWB-Icons.info
2. Copyright notices are not removed from executable and
documentation.
3. No more than a nominal fee is charged to cover cost of magnetic
media.
DeInstaller is Copyright (C) 1994 The Beet Research. All rights reserved.
The program uses:
MultiGUI Copyright (C) TBR (it's linked together with program
should be available as a shared
library soon... :-)
ReqTools library Copyright (C) Nico Franτois.
Introduction
------------
Every time you tried to install to your system a complex program
spreading its stuff all over your harddisk (fonts, libs, scripts, locales,
prefs, ARexx scripts and other accompaning files) you wondered "How will I be
able to restore previous state of my harddisk?". How many times you removed
a program you couldn't figure out what file belongs to? How many times you
found a file in deep nookes of harddisk and you said "WHAT THE HELL IS IT?"
and finally you didn't delete it??? Well, no more...
DeInstaller should be used during installation. It looks for all write
attempts (including creating subdirectories) and creates an AmigaDOS script
which, when executed, will throw out all the mess the installer did. It also
looks for all overwrite attempts giving you possibility to backup existing
files (extension '.old' will be added).
Features
--------
o Ability to deinstall everything you've installed. Doesn't matter what
you've used to install (orginal Installer by Commodore, other custom
installers, install scripts or even you did it by hand... :)
o Font-sensitive GUI, fully keyboard controlled, just Commodore's user
interface style guide compliant (maybe except locale, sorry). But...
not only. I followed Nico Franτois standards, what means when you press
a key assigned to a gadget it will be visualised and you can cancel it by
pressing a SHIFT key. Even more. There is a keypress timeout (very
useful when your other hand holds a cake, cup of coffee, bottle of beer
or even a girlie ;-).
o MultiGUI'ed what means internal multitasking. It's not so usable in
such a program but, for example, while DeInstaller is tracing you can
execute a script. Or even you can contemplate 20 "Abouts"
simultaneously. Moreover it gives you proper (one pixel lower)
underscore char even if you use the ugly topaz (another great Nico's
idea - but mine is smarter, if you use a proportional font, underscore
won't be placed too low... :).
o 100% legal (well, almost :) & 100% assembly code
(well, the last one is not really a feature, though >)
o Thoroughly tested with Enforcer & Mungwall.
Requirements
------------
DeInstaller requires an Amiga (surprise?) with at least Kickstart
2.04 (NOTE: tested only on 3.0/3.1!, sorry :). It is completely
useless without harddisk. It has no special memory requirements,
should run even on 0.5MB machines.
DeInstaller requires reqtools.library V38+ installed in your LIBS:
(it's included in this archive).
Installation
------------
Copy the main program file and its icon whatever you want. There
are supplied two alternate icons in MagicWB style (Thanks, Dixan :).
Copy (if you haven't) reqtools.library to your LIBS: directory.
Usage from Shell
----------------
Bad news... Although DeInstaller can be launched from Shell no
options can be specified (only when launching from Workbench - via
tooltypes). But don't cry - for your convenience DeInstaller
automatically detaches from Shell.
Usage from Workbench
--------------------
When launched from WB DeInstaller looks for following tooltypes:
SCRIPTDIR=<path> Sets the default directory for generated
"deinstall scripts". If not specified, S:
will appear in "Script" gadget.
Examples:
SCRIPTDIR S:deinstall
SCRIPTDIR=WORKS:scripts
NOREQUESTCHOICE Sets "ask" mode instead of "requestchoice"
mode. By default DeInstaller generates
scripts which use RequestChoice command. As
it is not available up to 2.1 Kickstart
specifying this tooltype forces it to
generate script which use ask command instead.
Program's gadgets
-----------------
The program window contains following gadgets:
Program Specifies the name of a program to install and,
indirectly, to deinstall. You can type here
whatever you want, but it is wise to note here
program name and version. Program name doesn't
mean a script name!
Script Specifies the script name to generate.
Req As above, but pops up a file requester.
Trace Begins the tracing for "newcomers" on your
harddisk. If you didn't specify the program
name you are kindly informed about.
Message "DeInstaller on duty" should appear.
Stop Quite self-explanating... finishes the
operation.
Then you get a deinstall script, executable from
Shell or directly from DeInstaller using Launch
gadget. (For your convenience it has the script
bit set, so you can omit Execute command, when
launching from Shell).
Launch Executes selected script(s). It's for people
who really don't like shell :-).
Delete Delete selected file(s). It's intended for
deleting deinstaller scripts but, of course,
you can delete what you want with this.
About Well, what to say about...
Quit I bet you have seen something like this before,
haven't you?
There is also an information (read-only) gadget. Shows current
program status (eg. info about caught files and dirs).
Examplary usage
---------------
I want to install program Mess-on-harddisk v8.71 which I've just
pirated. It occupies 7 floppies and I'm really afraid it can fill my
drive with hundreds of "don't-know-what-the-hell-it-is-for" files.
So I...
- start DeInstaller
- type "Mess-on-hardisk v8.71" in the ╗Program½ gadget
- press ╗Req½ gadget - it will bring you a file requester in
S: directory (by default) and then type filespec (example:
"S:deinstall/messonhd-remove") for the "deinstall script" to generate
- press ╗Trace½ what brings the file requester
("Deinstaller on duty" should appear)
NOW, I INSTALL THE PROGRAM! (with installer, if supplied or by hand)
(during the installation DeInstaller shows how many files and dirs
were created on my harddisk)
- press ╗Stop½ button when installation is done.
- press ╗Quit½ to leave the program.
Now I have program Mess-on-harddisk v8.71 installed. It filled my
drive with hundreds of "don't-know-what-the-hell-it-is-for" files.
And as I've figured out that this program is completly useless I
want to flush all that stuff out of my precious harddisk space.
- start DeInstaller again.
- press ╗Launch½ gadget - select the script (in this case it is
"S:deinstall/messonhd-remove")
- confirm the deinstallation process!
After some flashings of harddisk led the harddisk is as BEFORE!
---------------------------------------------------------------
So, now I can install program Mess-on-harddisk-bigger-than-ever-before
which fills my drive with even more hundreds of "still-don't-know-what-
the-hell-it-is-for" files. So I...
To Do
-----
Well, in previous release (1.1) I enumerated here some things to add in
future (BTW: it was over half a year ago !). Yeah, but I decided to not use
assembler anymore (at least for utilities), so DeInstaller wouldn't be updated.
Believe me, I haven't enough motivation to rewrite it in, for example, C. And,
to be honest, there are much more exciting projects on the way.
Contacting the author
---------------------
Any ideas, bug reports, donations, etc. will be sincerely
welcomed. Just drop me a piece of paper.
My addy:
Grzegorz Calkowski
Rzedowice
ul.Dobrodzienska 8
42-780 Dobrodzien
POLAND
phone: +48(0)34-575875
E-mail: calkowsk@us.edu.pl
Always remember:
----------------
Beeting is beliving...
and Amiga is best computer ever!
Acknowledgements
----------------
Thanks should go to:
- Michal Prochownik for really constructive help with writting this doc
and for those awfully pretty icons.
- my brand new A4000 which seems to be faaaar more reliable than the
damned A1200 I had before (and at least it looks faaaar better...:^).
- Commodore for resurrection...
Any greetings expected? Well, press some keys in the program window... 8)
PROGRAM HISTORY:
v1.0▀ (16.10.94)
o First BETA release.
===========================================================================
v1.0 (25.10.94)
o Ooopps... it worked only on my A4000 due to a damned bug causing an
Enforcer hit in MultiGUI stuff.
o Another Enforcer hit found in CreateDir() patch. Fixed.
o Some Mungwall hits found. Fixed.
o Startup code was broken - DeInstaller crashed immediately when
launched from Shell. Fixed.
o Small optimizations.
===========================================================================
v1.1 (23.11.94)
o AmigaGuide«'ed documentation included.
o Important feature added: attempts to overwrite existing files are
intercepted - user can let overwrite, reject or backup existing
file (appends ".old" extension).
o ╗Script½ and ╗Req½ gadgets added (instead of poping-up requester when
╗Go½ was pressed..
o New gadgets added: ╗Launch½ (allows to execute scripts), ╗Delete½
(allows to delete scripts)
o ╗Go½ renamed to ╗Trace½.
o Now window can be zipped (zoomed).
o Version string was incorrect.
o A plenty of internal optimizations.
===========================================================================
v1.1a (09.07.95) <-- sic!
o Some nasty mungwall hits found & cured.
o Hope it will finally work on anything else than my A4000... ;]
===========================================================================
(23.10.95)
o Not really an update (no version change).
o Reqtools.library removed from archive. Is there anybody without it?
o Uploaded to Aminet (and my E-mail address included).